package regist;

/**
 * 抽象观察者类（建议携程接口）.
 *
 * @author GongXincheng
 * @since 2019-09-23 15:08
 */
abstract class BaseObserver<T> {

    /**
     * 观察者的名称.
     */
    String observerName;

    /**
     * 具体的 发布者（通知者）引用
     */
    BaseSubject<T> baseSubject;

    BaseObserver(BaseSubject<T> baseSubject) {
        this.baseSubject = baseSubject;
    }

    /**
     * 收到通知后的操作.
     */
    abstract void operation();

}
